[% setvar title Precompiled Perl scripts. %]
<div id="archive-notice">
    <h3>This file is part of the Perl 6 Archive</h3>
    <p>To see what is currently happening visit <a href="http://www.perl6.org/">http://www.perl6.org/</a></p>
</div>
<div class='pod'>
<a name='TITLE'></a><h1>TITLE</h1>
<p>Precompiled Perl scripts.</p>
<a name='VERSION'></a><h1>VERSION</h1>
<pre>  Maintainer: Slava Pechenin &lt;<a href='mailto:slava@baltica.ru'>slava@baltica.ru</a>&gt;
  Date: 29 Aug 2000
  Mailing List: <a href='mailto:perl6-internals@perl.org'>perl6-internals@perl.org</a>
  Number: 172
  Version: 1
  Status: Developing</pre>
<a name='ABSTRACT'></a><h1>ABSTRACT</h1>
<p>The functionality to store/load precompiled perl scripts may be built into
the core.</p>
<a name='DESCRIPTION'></a><h1>DESCRIPTION</h1>
<p>There exists a possibility to do the thing. One can store compiled perl
code in file and load it again via B::Bytecode. But the produced file
is large. The loading time is comparable to compiling the code anew.
Several simple experiments show that disk i/o times does not affect too
much - almost all data are in cache. The B extension mechanisms and
algorithms are too slow. Therefore it is unusable.</p>
<p>Why bother? Consider the script that uses xml/xsl. It takes a lot of time
to get such a script running. And the debugging process becomes harder
with annoying initialization (every single .pm must be read by OS from
numeric files and compiled from the very beginning). Another example is
web server. Why loose CPU time to compile the same scripts?</p>
<a name='IMPLEMENTATION'></a><h1>IMPLEMENTATION</h1>
<p>Perl may have an option to vary the target precompiled format. The format
affects the generated precompiled file size. User may choose appropriate
effective format to minimize loading time. It clearly depends on the
system which runs the script.</p>
<a name='REFERENCES'></a><h1>REFERENCES</h1>
<p>none</p>
</div>
